libxml2文档中的所有示例libxmltutorial提到使用外部XML文件。如果我需要解析其中包含XML内容的字符串怎么办?在libxml2C库中是否真的可行,或者唯一的解决方案是将字符串保存到文件并将该文件名作为参数发送到下面的函数。但它会严重影响性能。doc=xmlParseFile(docname);libxml2中是否有任何内置函数来解析字符数组? 最佳答案 您可以使用xmlParseDoc(),它将采用空终止字符串(xmlChar/unsignedchar)并像使用xmlParseFile()从文件中读取一样完全解析
我希望能够对XHTML文档进行三向合并:从文档的一些原始副本开始一个用户编辑原始文档的副本另一个用户编辑原始文档的单独副本需要一个工具来合并(自动和/或可视化)两个用户所做的更改。注意:我想在商业软件中包含此功能:所以我更喜欢免费和/或开源的东西,而不是商业工具。我怀疑如果该工具是XML感知的,比尝试使用像diff3这样实现平面文本的3路合并的软件更好鉴于所有三个输入文档都是有效的XHTML文档,生成的输出文档也应该有效我找到的工具包括:The"3DM"XML3-wayMergingandDifferencingToolFuegoCoreXMLDiffandPatchToolXmlDi
我在此处粘贴了一些使用gccfile.c-lxml2编译且没有警告的代码,假设您的系统中安装了libxml2。#include#include#include#include#includexmlDocPtrgetdoc(char*docname){xmlDocPtrdoc;doc=xmlParseFile(docname);if(doc==NULL){fprintf(stderr,"Documentnotparsedsuccessfully.\n");returnNULL;}returndoc;}xmlXPathObjectPtrgetnodeset(xmlDocPtrdoc,xml
如果我通过xmllint运行此XML验证:xmllint--noout--schemaschema.xsdtest.xml我收到此成功消息:.../test.xmlvalidates但是,如果我通过libxml2的CAPI运行相同的验证:intresult=xmlSchemaValidateDoc(...)我得到一个1845的返回值和这个失败消息:Element'{http://example.com/XMLSchema/1.0}foo':Nomatchingglobaldeclarationavailableforthevalidationroot.我完全无法理解。:(schema.
我需要了解不同XML工具(解析器、验证器、XPath表达式求值器等)的性能如何受到输入文档的大小和复杂性的影响。是否有资源记录了CPU时间和内存使用情况如何受到……好吧,什么?文档大小(以字节为单位)?节点数?关系是线性的、多项式的还是更糟?更新在IEEEComputerMagazine,第41卷第9期,2008年9月的一篇文章中,作者调查了四种流行的XML解析模型(DOM、SAX、StAX和VTD)。他们运行了一些非常基本的性能测试,这些测试表明当输入文件的大小从1-15KB增加到1-15MB或大约1000倍时,DOM解析器的吞吐量将减半。其他模型的吞吐量没有受到显着影响。遗憾的是,
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我正在为嵌入式系统开发一个项目,该系统使用XML将数据传入和传出系统。我不希望XML处理分解为使用snprintf()构建XML字符串的一堆位/strcat()和friend或通过计算“”和“>”字符来解析XML。我发现了几个XML库,
因此,作为一个有趣的项目,我决定编写自己的XML解析器。不,不解析特定文档,不,不使用XML解析器库。我的意思是编写代码将任何XML文档解析为可用的数据结构。只是因为我喜欢挑战。:-)话虽如此,到目前为止它被证明是……有趣的。它不像最初看起来那么容易解析(尤其是当您开始考虑特殊字符、CDATA、空标签、注释等时)。是否有任何人知道的任何有据可查的XML解析算法或解释?似乎到处都有记录完备的Queue和Stack以及BTree等等等等的实现,但我不确定我是否见过一个简单的、记录完备的XML解析器算法...我再说一遍:我不是在寻找预构建的解析器库!我正在寻找关于如何创建我自己的预构建解析器
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7年前。Improvethisquestion我正在寻找一个用于嵌入式项目的非常小的XML解析器。它需要编译到10-15k,不需要验证,并且需要简单和可移植。
我对压缩几乎一无所知,所以请耐心等待(这可能是一个愚蠢而痛苦的明显问题)。假设我有一个带有几个标签的XML文件。text现在假设我的多个XML文件中有一堆非常长的标签和许多属性。我需要将它们压缩到尽可能小的尺寸。最好的方法是使用特定于XML的算法,该算法为各个标签分配假名,如vlt1或vlt2。但是,这不会像我尝试的那样“开放”,我想使用像DEFLATE或LZ这样的通用算法。如果存档是.zip文件,它也会有所帮助。由于我处理的是纯文本(没有像图像这样的二进制文件),所以我想要一种适合纯文本的算法。哪个生成的文件大小最小(首选无损算法)?顺便说一下,场景是这样的:我正在为包含XML文件的
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。你能推荐一些最好的CXML解析器吗?